;
!function() {
	var layer = layui.layer,
		form = layui.form;

	form.on("submit(changePwd)", function() {
		$.ajax({
			url : "/secuser/changePwd",
			type : "post",
			data : {
				"pwd" : $("#new-pwd").val()
			},
			success : function(result) {

				if (result.status == 0) {
					layer.msg("修改成功！");
					exitLogin();
					setTimeout("parent.location='/login'", 2000);
				} else {
					layer.msg("修改失败！");
				}
			}
		});
		return false;
	});

	function exitLogin() {
		//删除缓存用户信息
		$.ajax({
			url : "/secuser/delSecUser",
			type : "post",
			success : function(result) {}
		});
	}

	// 发送短信验证码
	var InterValObj; // 定时器变量
	var count = 120; // 间隔函数，1秒执行
	var curCount; // 当前剩余秒数
	// 发送验证码
	$("#msg-btn").click(function() {
		curCount = count;
		// 设置button效果，开始计时
		$("#msg-btn").addClass("layui-btn-disabled");
		$("#msg-btn").prop("disabled", "disabled"); // 设置按钮为禁用状态
		$("#msg-btn").text("正在发送..."); // 更改按钮文字
		// 向后台发送处理数据
		$.ajax({
			url : "/secuser/sendSMS",
			type : "post",
			success : function(result) {
				if (result.status == 0) {
					$("#msg-btn").text(curCount + "秒后再次获取"); // 更改按钮文字
					InterValObj = setInterval(SetRemainTime, 1000); // 启动计时器timer处理函数，1秒执行一次
				} else {
					layer.msg(result.msg);
					$("#msg-btn").text("重新发送验证码");
					$("#msg-btn").removeClass("layui-btn-disabled");
					$("#msg-btn").removeAttr("disabled"); // 移除禁用状态改为可用
				}
			}
		});
	});

	// timer处理函数
	function SetRemainTime() {
		if (curCount == 0) {
			clearInterval(InterValObj); // 停止计时器
			$("#msg-btn").removeClass("layui-btn-disabled");
			$("#msg-btn").removeAttr("disabled"); // 移除禁用状态改为可用
			$("#msg-btn").text("重新发送验证码");
		} else {
			curCount--;
			$("#msg-btn").text(curCount + "秒后再次获取");
		}
	}

	var status = 0;
	var code = 0;
	$(function() {
		//原密码的失去焦点
		$("#current-pwd").blur(function() {
			if ($(this).val() == "") {
				layer.msg("请输入当前密码");
			} else {
				pwdSJ();
			}
		});

		$("#new-pwd").blur(function() {
			if ($(this).val() == "") {
				layer.msg("请输入新密码");
			}
		});

		$("#confirm-new-pwd").blur(function() {
			if ($(this).val() == "") {
				layer.msg("请再次输入密码");
			}
		});

		//验证码的失去焦点
		$("#msg-code").blur(function() {
			if ($(this).val() == "") {
				layer.msg("请输入验证码");
			} else {
				codeSJ();
			}
		});
	});

	function pwdSJ() {
		$.ajax({
			url : "/secuser/vailOldPwd",
			type : "post",
			async : false,
			data : "pwd=" + $("#current-pwd").val(),
			success : function(result) {
				if (result.status == 1) {
					layer.msg(result.msg);
				}
				status = result.status;
			}
		});
	}

	function codeSJ() {
		$.ajax({
			url : "/secuser/vail",
			type : "post",
			data : {
				"code" : $("#msg-code").val()
			},
			async : false,
			success : function(result) {
				if (result.status == 1) {
					layer.msg("验证码不正确！");
				}
				code = result.status;
			}
		});
	}


	// 自定义表单验证
	form.verify({
		oldpwd : function(value) {
			if (status == 1) {
				return "当前密码不正确";
			}
		},
		newpwd : function(value) {
			if (value.length < 8) {
				return "密码长度不能少于8位";
			} else if (!/^(\w){8,20}$/.test(value)) {
				return "密码只能包含字母、数字或下划线";
			}
		},
		renewpwd : function(value) {
			if (value != $("#new-pwd").val()) {
				return "两次输入的密码不一致";
			}
		},
		msgcode : function(value) {
			if (code == 1) {
				return "验证码不正确！";
			}
		}
	});

	//输入密码新密码时实时显示密码强度
	$("#new-pwd").keyup(function() {
		kp();
	});

	$("#cz").click(function() {
		kp();
	});

	function kp() {
		var val = $("#new-pwd").val();
		var num = checkStrong(val);
		switch (num) {
		case 0:
			$("#checkPwdSecurity").children().css({
				'background' : 'lightgray',
				"color" : "gray"
			});
			break;
		case 1:
			$("#checkPwdSecurity").children().css({
				'background' : 'lightgray',
				"color" : "gray"
			});
			$($("#checkPwdSecurity").children("div").get(0)).css({
				'background' : 'red',
				"color" : "black"
			});
			break;
		case 2:
			$("#checkPwdSecurity").children().css({
				'background' : 'lightgray',
				"color" : "gray"
			});
			$($("#checkPwdSecurity").children("div").get(1)).css({
				'background' : 'yellow',
				"color" : "black"
			});
			break;
		case 3:
			$("#checkPwdSecurity").children().css({
				'background' : 'lightgray',
				"color" : "gray"
			});
			$($("#checkPwdSecurity").children("div").get(1)).css({
				'background' : 'yellow',
				"color" : "black"
			});
			break;
		case 4:
			$("#checkPwdSecurity").children().css({
				'background' : 'lightgray',
				"color" : "gray"
			});
			$($("#checkPwdSecurity").children("div").get(2)).css({
				'background' : 'green',
				"color" : "black"
			});
			break;
		default:
			break;
		}
	}

	// 检测密码强度
	function checkStrong(val) {
		var modes = 0;
		if (val.length < 5) return 0;
		if (/\d/.test(val)) modes++; //数字
		if (/[a-z]/.test(val)) modes++; //小写
		if (/[A-Z]/.test(val)) modes++; //大写  
		if (/\W/.test(val)) modes++; //特殊字符
		if (val.length > 12) return 4;
		return modes;
	}
	;
}();